<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<meta http-equiv="X-UA-Compatible" content="ie=edge">
	<title>Document</title>
</head>
<body>
	<script>
	// 	var a=10;
	
	//   function fn1() {
    //      var a=5;

	// 	  return function () {
	// 		  console.log(this)  //this跟调用有关
	// 		  a++
	// 		  console.log(a)
	// 	  }

	//   }
	// //   console.log(a)

    //  var res1=fn1();
	//  console.log(res1)
	//  var res2=res1();



	
	   function fn1() {
          var a=5; 
		  var b=10;
			function fn2 () {
					console.log(this)  //this跟调用有关
					a++
					console.log(a)
				}
		   fn2()

		  

	   }


    var res1=fn1();

	var res1=null //清空闭包内存


	//  1 闭包特殊的功能 可以保持父级函数的作用域  (放在一个可以让子函数访问得到的位置  内存  一直保持 )
	//2  内存 泄露   
	// 3 垃圾回收机制 js默认会做这个事件   








	 



	
	
	</script>
</body>
</html>